package com.huatai.saas.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.huatai.saas.dto.AnnouncementInfoDto;
import com.huatai.saas.dto.AnnouncementUpdateDto;
import com.huatai.saas.dto.BaseDto;
import com.huatai.saas.entity.AnnouncementEntity;
import com.huatai.saas.vo.AnnouncementVO;

/**
 * 公告类的业务逻辑层
 * @program: nanming-saas
 * @author: zcw
 * @create: 2024-04-24 14:00
 */
public interface AnnouncementService extends IService<AnnouncementEntity> {
	/**
	 * 添加公告内容
	 * @param announcementInfo 公告内容
	 * @return 是否添加成功
	 */
	boolean saveAnnouncement(AnnouncementInfoDto announcementInfo);

	/**
	 * 查看所有的公告列表信息
	 * @param baseDto 分页信息
	 * @return
	 */
	IPage<AnnouncementVO> getAnnouncementList(BaseDto baseDto);

	/**
	 * 根据id查询对应的公告内容
	 * @param id 公告id
	 * @return
	 */
	AnnouncementVO getAnnouncementInfo(Long id);

	/**
	 * 删除公告
	 * @param id 公告id
	 * @return
	 */
	boolean delAnnouncement(Long id);

	/**
	 * 修改公告信息
	 * @return
	 * @param announcementUpdateDto 修改公告信息的参数
	 */
	boolean updateAnnouncement(AnnouncementUpdateDto announcementUpdateDto);
}
